home *** CD-ROM | disk | FTP | other *** search
/ Aminet 25 / Aminet 25 (1998)(GTI - Schatztruhe)[!][Jun 1998].iso / Aminet / comm / tcp / rxsocket.lha / pop3.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1998-04-05  |  902 b   |  58 lines

  1. /*
  2.     checks your e-mail out
  3.     Usage: pop3 <pop3 host> <user> <password>
  4. */
  5.  
  6. parse arg host user pass .
  7.  
  8. if host=="" | host=="?" | user=="" | pass=="" then do
  9.     say "Usage: pop3 <pop3 host> <user> <password>"
  10.     exit
  11. end
  12.  
  13. sock = OpenConnection("tcp","pop3",host)
  14. if sock<0 then do
  15.     say "unable to connect pop3 service at <" || host || ">:" Errno()
  16.     exit
  17. end
  18.  
  19. say rec()
  20.  
  21. call sen("USER" user)
  22. call rec()
  23.  
  24. call sen("PASS" pass)
  25. say rec()
  26.  
  27. call sen("STAT")
  28. say rec()
  29.  
  30. call sen("QUIT")
  31. say rec()
  32.  
  33. exit
  34.  
  35. sen:
  36. parse arg string
  37.     string=string||d2c(10)
  38.     res = send(sock,string)
  39.     if res ~= length(string) then do
  40.         say "send: error" Errno()
  41.         exit
  42.     end
  43.     return
  44.  
  45. rec:
  46.     len = recv(sock,"BUF",256)
  47.     if len<0 then do
  48.         say "recv: error" Errno()
  49.         exit
  50.     end
  51.     if left(BUF,4) == "-ERR" then do
  52.         parse var BUF "-ERR" BUF
  53.         say "error from server:" BUF
  54.         exit
  55.     end
  56.     parse var BUF "+OK" BUF
  57.     return translate(BUF,' ',d2c(10))
  58.